Method and system for collecting, synchronizing, and reporting telecommunication call events and work flow related information

ABSTRACT

The present invention is directed to a method and apparatus for recording and generating additional information related to telecommunication events using a mobile communication device, such as a telephone call or a text messaging event using cellular phone or a personal digital assistant. Specifically, the preferred embodiments of the present invention records information such as GPS coordinates that indicate a position of the mobile communication device during the communication event, as well as a location of a sender or receiver of data to or from the mobile communication device, so as to facilitate a log entry of the position of the mobile communication device as well as other useful information that are associated with the communication events.

This application claims priority from Provisional Application No.60/493,704, titled “Method and System for Collecting, Synchronizing, andReporting Telecommunication Call Events and Work Flow RelatedInformation,” filed on Aug. 8, 2003 the contents of which areincorporated herein by reference.

BACKGROUND

1. Field of Invention

This present invention relates to the capturing, processing, mapping,reporting, and displaying of telecommunication call events that occur oneither landline or wireless telecommunication devices (i.e., POTStelephones, cellular telephones, 3G-based wireless data/telephones,etc.), where the information content of the telecommunication callevents can be presented locally on the device or remotely on a desktopor laptop computer using a computer application or a web browser thatcan interface to an online networked server.

2. Description of the Related Art

Telecommunication devices, specifically wireless telephones, areachieving widespread use today. Such telecommunication devices arecommonly used to establish communication between other telecommunicationdevices. Recently telecommunication devices are becoming more than justcommunication devices, but also a computing platform for executingapplications similar to the early days of the personal computer era,where devices had limited memory and processing resources. Thedifference is that these new telecommunication devices, while currentlyprovide a limited computing platform, also enable wireless data accessto the Internet and expose the telephone's telephony functionality.These new telecommunication devices are well known to people that areskilled in the art.

Prior art systems, such as customer premises equipment (CPE) enable thestorage capability of caller identification (Caller ID) information ofincoming calls, assuming that said Caller ID information is not blocked.For example, Lucent Technologies produces a model ISDN 8520T CPE thatkeeps a log of unanswered incoming, answered incoming, and outgoingtelephone calls. Each call has a time stamp associated with it so thatunanswered calls can be distinguished from available calls that haveCaller ID information. When the CPE is used with a switch, such as anISDN PBX switch, the CPE will provide each caller's name if it is storedin the switch's database. As individuals that pay telephone bills know,all of this caller information is also preferably included in acustomer's telephone bills for the purpose of billing information and iswell known to people that are skilled in the art.

Customer Relationship Management (CRM) prior art applications provide asolution to understand customer related pipelines, such as sales orsupport team's pipelines. For sales, it is important to keep track of acompany's Contacts, Accounts, and Opportunities. Every Account has aContact or group of Contacts that are associated with the Account. EveryOpportunity has one or many Accounts that are associated with theOpportunity and indirectly have Contacts that are associated with theOpportunity through a common Account or Accounts. Contacts, Accounts,and Opportunities have activities, such as telephone calls, that areassociated with one or more of the Account, Opportunity, or Contactcategories (i.e., a telephone call can be associated with a Contact thatalso has associations with an Account and an Opportunity). Prior art CRMsystems are well known to people skilled in the art.

A problem with existing prior art CPE and switch systems is that theyonly provide a mechanism for capturing call logs at the switch that thetelecommunication device interfaces with. This is not practical withwireless telecommunication devices, since acquiring access to a switchat a base station is not reasonable due to the large number of basestations necessary to create a cellular wireless network. Also,accessing the call logs directly from different wireless or landlinecarriers introduces interface and connection issues, since carriers usedifferent standards that are not compatible with other carriers.

Another problem with accessing the call logs directly from a wireless orlandline carrier is that each telecommunication carrier, which may begrouped in a local area or across an entire continent, would have toprovide access to, or expose, call log information for their entireuser-base on their networks. This introduces a significant privacyproblem, in addition to requiring significant bandwidth to transport allof the users' call logs, since not all users on said networks willsubscribe to this advanced service that integrates and associates calllogs with database records.

Yet another problem is that call logging by the wireless or landlinecarrier only provides call logs specifically for billing purposes, andthe advanced Telecommunication Call Events that the telecommunicationdevice can provide are not provided. For example, this inventionprovides a Telecommunication Call Event to include the GPS position ofthe telecommunication device at the time the device received, missed, orinitiated a telephone call, or during the entire duration of thetelephone call.

An additional problem with existing call logging systems, such as theCPE, is that the centralized logging solution does not always have thecapability of being disabled or turned off. Specifically, this is thecase for carrier specific switches whose main function is to recordcalls for billing purposes. By handling the Telecommunication Call Eventrecording (i.e., call logging) functions on the telecommunicationdevices, the authorized user can have the ability to disable the calllogging functionality simply and effectively.

It is yet another problem with the prior art system when a user owns ormakes calls from multiple telecommunication devices (i.e., a landlinetelephone, a wireless telephone, etc.), specifically when thetelecommunication devices are operated on different carrier networks,since interfacing with each call logging switch amongst all of thecarriers that the telecommunication device connects with is a verydifficult and daunting task. This problem is further exaggerated if theuser owns a wireless telecommunication device with roaming capabilityand “roams” into a different wireless carrier network. With prior artsystems, access to all possible roaming networks would be required toprovide a continuous call logging solution.

Another problem with existing database applications, such as CRMapplications, is that the user is required to manually enter theTelecommunication Call Event associations (i.e., such as telephonenumber associations) into database records, such as Contact data (i.e.,vCARD), Accounts, or the like. Providing a system that autonomouslyupdates the call history information would provide better real-timeforecasting and reporting information. As people that are skilled in theart will agree, this significantly improves the effectiveness of suchsystems.

Until now, an adequate solution to these problems has eluded thoseskilled in the art. Thus, there exists a need to provide a solution thatenables Telecommunication Devices to capture Telecommunication CallEvents for enabling the association of Telecommunication Call Eventswith database records, which may include without limitation Contacts,Accounts, Opportunities, Forecasts, Leads, Tasks, Documents, Cases,other Events, or the like. This invention provides many importantbenefits for Telecommunication Devices which are an important andintegral part of improving Work Flow-related processes.

SUMMARY OF THE INVENTION

It is an object of the present invention to provide a method and systemfor enabling the Telecommunication Device to capture alltelephony-related events, denoted hereinafter as Telecommunication CallEvents (TCE). In the preferred embodiment, the Telecommunication CallEvents can include the telephony-related events without limitation asfollows:

Telecommunication Call Events (Example):

-   -   Telecommunication Device's Local Telephone Number and/or Unique        Identifier (i.e., the telecommunication device's Electronic        Serial Number (ESN), or the like).    -   Incoming Call's Telephone Number and Related Caller-ID        Information        -   Related Caller-ID Information Includes:            -   Blocked or Not Blocked Caller-ID Information (i.e.,                indicating if the Caller-ID information is hidden or                visible).            -   Telephone Number's Registered Name                -   The Registered Name may be either a personal or                    business name. If it is a personal name, the                    Registered Name may include only the First Name,                    Surname, Middle Name, or any combination thereof. If                    the Registered Name is a Business, then the Business                    Name (i.e., DBA—“Doing Business As” Name) is                    typically provided.            -   Telephone Number's Registered Address            -   Telephone Number is registered to either a Landline or                Wireless Telephone    -   Missed Call's Telephone Number and Related Caller-ID Information        -   Related Caller-ID Information Includes:            -   Blocked or Not Blocked Caller-ID Information (i.e.,                indicating if the Caller-ID information is hidden or                visible).            -   Telephone Number's Registered Name                -   The Registered Name may be either a personal or                    business name. If it is a personal name, the                    Registered Name may include only the First Name,                    Surname, Middle Name, or any combination thereof. If                    the Registered Name is a Business, then the Business                    Name (i.e., DBA—“Doing Business As” Name) is                    typically provided.            -   Telephone Number's Registered Address            -   Telephone Number is registered to either a Landline or                Wireless Telephone    -   Outgoing Call's Telephone Number    -   Call Duration for either Incoming or Outgoing Telephone Calls    -   Roaming or Non-Roaming Call Indicators for either Incoming or        Outgoing Telephone Calls    -   Local or International Call Indicators for either Incoming or        Outgoing Telephone Calls    -   Telephone Call Start Event and the Time associated with said        Event    -   Telephone Call End Event and the Time associated with said Event    -   Completed or Incompleted Telephone Calls    -   Forwarded or Redirected Telephone Call Event and the Time        associated with Said Event    -   Spatial Coordinates on the Earth (i.e., GPS coordinates or the        like as well known to those skilled in the art) representing the        location of the Telecommunication Device at the Start of the        Call    -   Spatial Coordinates on the Earth (i.e., GPS coordinates or the        like as well known to those skilled in the art) representing the        location of the Telecommunication Device during the Entire or        Partial Duration of the Call        -   In this invention, the Spatial Coordinates can be captured            in real-time at varying position sample periods or triggered            based on the distance traveled or the like as known to those            skilled in the art.    -   Spatial Coordinates on the Earth (i.e., GPS coordinates or the        like as well known to those skilled in the art) representing the        location of the Telecommunication Device at the End of the Call    -   Spatial Coordinates on the Earth (i.e., GPS coordinates or the        like as well known to those skilled in the art) representing the        location of the Telecommunication Device's Wireless Base        Station(s) or Central Office at the Start of the Call    -   Spatial Coordinates on the Earth (i.e., GPS coordinates or the        like as well known to those skilled in the art) representing the        location of the Telecommunication Device's Wireless Base        Station(s) or Central Office during the Entire or Duration of        the Call        -   With a typical wireless Telecommunication Device, it is            possible for the telecommunication device connection to be            transferred from one wireless base station to another during            a telephone call (i.e., for either voice or data calls). In            this invention, the Telecommunication Device will store the            Spatial Coordinates on the Earth (i.e., GPS coordinates or            the like as well know to those skilled in the art)            representing the location of each wireless base station the            telecommunication device connection was transferred to and            the associated time of the transfer or “hand-off” time.    -   Spatial Coordinates on the Earth (i.e., GPS coordinates or the        like as well know to those skilled in the art) representing the        location of the Telecommunication Device's Connected Wireless        Base Station(s) or Central Office at the End of the Call    -   Distress Call (i.e., if the call is a 911 or E-911 call or the        like)    -   Information Call (i.e., if the call is a 411 call or the like)    -   Operated Assisted Call (i.e., if the call is a 611 call or the        like)    -   Voice Mail Call (i.e., such as *86 on most wireless carriers in        the United States)    -   Data or Voice Call    -   Digital or Analog Call    -   Dormancy State (i.e.; if the call is temporarily quiescent, but        capable of being activated)    -   Phone Power-On Event and the Time associated with said Event    -   Phone Power-Off Event and the Time associated with said Event    -   Low Battery Event and the Time associated with said Event    -   Signal Power (i.e., SNR, Eb/No, or the like, etc.) of the        Telecommunication Device and the Time associated with said Event    -   Entire or Portion of the Recorded Voice Message of the        Telecommunication Device during a Telephone Call and the Start        Time, End Time, and Duration of the said Telephone Call

It is an object of the present invention to provide a method and systemfor enabling the capturing and logging of Telecommunication Call Eventson the Telecommunication Device. As Telecommunication Call Events occur,they are registered and stored or recorded to a data storage device,located either locally within the Telecommunication Device or externallyon a remote storage device connected to the Telecommunication Devicethrough either a wired connection, such as theInternet/Intranet/Extranet, wireless connection, infrared connection,optical connection, or any combination of the aforementioned or similarconnections (i.e., wired, wireless, infrared, optical, or the likeconnection). In one embodiment, these local storage devices also includea flash memory storage device, hard disc drive, optical memory,non-volatile memory, or the like as well known to those skilled in theart. As illustrated, it is also an object of the present invention toenable the capability so that the storage of Telecommunication CallEvents, which typically occur in real-time, can be stored on a remotenetworked storage device. In one embodiment, the Telecommunication CallEvents are packaged and pushed directly to an online Internet-connectednetworked server that is connected to the Telecommunication Device usingfirst a wireless connection through a wireless base station and thenthrough the Internet to an online networked server.

It is an object of the present invention to provide a method and systemfor enabling the synchronization or transfer of said TelecommunicationCall Events, where the synchronization or transfer of saidTelecommunication Call Events are initiated based on 1). Real-TimeTelecommunication Call Events, 2). Scheduled Ad-Hoc and/or ReoccurringTime Intervals, and/or 3). Locally or Remotely Initiated TriggeredEvents. The Telecommunication Call Events are synchronized ortransferred from the Telecommunication Device to 1). a CentralizedServer Computing System (i.e., peer-to-server connection), 2). aDistributed Server Computing System (i.e., peer-to-multiple servers),and/or 3). a Personal Computing System using a variety of differenttransport mediums, such as a wired, wireless, infrared, optical, or thelike connection. For example in one embodiment, the TelecommunicationDevice can synchronize or transfer its Telecommunication Call Eventsusing a peer-to-peer (P2P) configuration directly to another computingplatform, such as a local PDA using a wireless Bluetooth connection. Inanother embodiment, the Telecommunication Device can synchronize ortransfer its Telecommunication Call Events using a peer-to-server (P2S)configuration to an online centralized server for later retrieval ofsaid call events and/or work flow status information. In a similarembodiment, the online server embodies a distributed server system forthe purpose of enabling better Reliability, Availability, andScalability (RAS) of the synchronization, transfer, or retrieval of saidTelecommunication Call Events and/or work flow status information.

It is an object of the present invention to provide a method and systemfor enabling the synchronization or transfer of said TelecommunicationCall Events in Real-Time from the local Telecommunication Device.

With advanced wireless telecommunication devices (such as devices thatprovide simultaneous data and voice capability, etc.) ortelecommunication devices with out-of-band data functionality (such asSMS functionality or the like), the transfer of Telecommunication CallEvents can occur in Real-Time to 1). a centralized server computingsystem, 2). a distributed server computing system, and/or 3). a personalcomputing system. This particular object allows the storing of theTelecommunication Call Events to the local telecommunication datastorage device for the purpose of ensuring the delivery of theTelecommunication Call Events. In most scenarios, temporarily storingthe Telecommunication Call Events is the preferred method of operationin order to provide a reliable data transfer, which is typicallynecessary in a wireless environment. Whenever a Telecommunication CallEvent occurs, the event is transferred, synchronized, or “pushed” inreal-time to the accompanying receiving device(s). After the real-timetransfer of the Telecommunication Call Events has occurred, a copy ofthe Telecommunication Call Event(s) may be temporarily stored locallyfor added reliability until an acknowledgement of the receipt of thespecific Telecommunication Call Event(s) is received by theTelecommunication Device. Once the Telecommunication Device has receivedan acknowledgement or confirmation from the receiving device(s), theTelecommunication Device can then safely delete or remove the sentTelecommunication Call Event(s). If the Telecommunication Device did notreceive an acknowledgment from the receiving device(s), theTelecommunication Device will first store, then forward or resend thedata at a later time. This store-and-forward operation will continueuntil the Telecommunication Device receives an acknowledgement from thereceiving device(s) confirming the delivery of the TelecommunicationCall Event(s) for the specific Telecommunication Device. This methodprovides a mechanism for ensuring that the transferred TelecommunicationCall Events will reach their desired destination in a wirelessenvironment that periodically has no coverage area or is subject tocoverage loss due to a number of various reasons, such as multipath,blockage, etc. In one embodiment, when a call is received, that call'stelephone call event and Caller ID information (e.g., telephone numberof caller, telephone number of called telephone, time the call wasstarted, voice call event, received call event, non-roaming call event,etc.) is transferred, synchronized, or “pushed” in real-time to anonline server.

It is an object of the present invention to provide a method and systemfor enabling the Telecommunication Call Events synchronization ortransfer process to be scheduled to occur at various reoccurring timesor ad-hoc. Typically, for the Scheduled Event Model, theTelecommunication Call Events are recorded to the TelecommunicationDevice's data storage device in real-time as they occur, such as in aFlash Memory storage device, hard disc drive, or the like as well knownto those skilled in the art. At a predetermined or scheduled time, theaccumulated Telecommunication Call Events are synchronized ortransferred to 1). a centralized server computing system (i.e.,peer-to-server connection), 2). a distributed server computing system(i.e., peer-to-multiple servers), and/or 3). a personal computingsystem. In one embodiment, at the top of every hour the accumulatedTelecommunication Call Events are synchronized or transferred to anonline server.

It is an object of the present invention to provide a method and systemfor enabling the Telecommunication Call Events synchronization ortransfer process to be triggered based on the detection of a localand/or remote event. In this present invention, locally triggered eventsmay include Telecommunication Call Events, pressing a key on theTelecommunication Device, power-on event, low battery event, reaching aspecified storage size limit or storage threshold for theTelecommunication Device, signing-in or executing an application orsub-process running on the Telecommunication Device, or the like.Externally triggered events may include receiving an E-Mail, SMSmessage, or TCP/IP or UDP command packet to remotely initiate thesynchronization or transfer process. This command packet (for example, aSMS message) may also utilize authentication and authorization protocolsand procedures in order to correctly identify and authenticate that theuser or process which remotely initiated the synchronization or transferprocess has the proper authority and credentials to initiate such arequest.

It is an object of the present invention to provide a method and systemfor notifying and providing a confirmation message to theTelecommunication Device that recently had a remotely-initiatedsynchronization or transfer process performed. This object of thepresent invention apprises the owner(s) or user(s) of theTelecommunication Device that a remote synchronization or transferprocess had recently been completed by an authorized user that had theappropriate credentials to make such a request. The confirmation messagemay be digitally signed to authenticate that the sender of theconfirmation message is an authorized remote system or user thatinitiated the synchronization request. This present invention allows theconfirmation message to be sent directly to the TelecommunicationDevice's unique address, such as an SMS address (i.e., telephone numberof the Telecommunication Device, such as9495551212@wirelesscarrier.com), in addition to numerous other uniqueaddresses that are associated with the Telecommunication Device. Theseadditional addresses may include the owner's or user's E-Mail addressfor the Telecommunication Device, or the IT administrator's E-Mailaddress that maintains the Telecommunication Device, or any predefinedunique address (i.e., E-Mail Address, Pager Number, Telephone Voice MailAddress, or the like) that was set by a user that has proper authorityand credentials for the Telecommunication Device.

It is an object of the present invention to provide the synchronizationor transfer process of Telecommunication Call Events or data related toTelecommunication Call Events using a wired, wireless, infrared,optical, or similar connection. For example, in one embodiment, aTelecommunication Call Events log can be transferred to an onlinenetworked server via both a wireless connection, such as when using acell phone to a base station, and then through the Internet to an onlinenetworked server. In another embodiment, the connection to the Internetcan also be enabled first through a serial, USB, Firewire, or the likeconnection that is connected to a desktop or laptop computer, and thenthrough the Internet connection which is established from the desktop orlaptop computer. In a similar embodiment, the connection can also beestablished wirelessly to either the desktop or laptop computer, such asusing a Bluetooth connection. In a different embodiment, the wirelessconnection can be established using a Local Area Network (LAN), such asin an office environment. In a similar embodiment, the wirelessconnection can be established using a Wide Area Network (WAN), as with acellular device that is wirelessly connected to a nearby base stationwhich has an established connection to the online networked server bymeans of an Internet connection.

It is an object of the present invention to provide a method and systemto provide the association of either Contact(s) to TelecommunicationCall Events and/or Telecommunication Call Events to Contact(s), in whichthe Contact(s) are stored and referenced from a database, either locallyor through an online centralized or distributed server. The Contactfields are searchable and capable of being correlated with theTelecommunication Call Events. For example, in one embodiment, aTelecommunication Device received a call from telephone number (732)792-4265 on Jun. 17, 2001 at 4:30 PM EST. In this embodiment, theTelecommunication Device received said telephone call and synchronizedthe Telecommunication Call Events information (such as, but not limitedto, the telephone number of caller, telephone number called, time stampwhen call was started, call duration, time stamp when call was ended,voice call, received call event, non-roaming call, etc.) to an onlinenetworked server. In this embodiment, a user is able to view using a webbrowser which Contact in their database initiated the call. The serverprovided this functionality by correlating the receivedTelecommunication Call Events which contained the caller's telephonenumber with the telephone number that was stored in the user's Contactdatabase. This same object provides the capability for viewing saidcorrelated contacts for said Telecommunication Call Events eitherlocally on the Telecommunication Device or remotely, such as fromanother computing device or other Telecommunication Device.

It is an object of the present invention to provide a method and systemto enable users within a predefined group to share their individualContact databases with each other for the purpose of providing a morecomplete and combined set of Contact Information (i.e., vCard, whichautomates the exchange of information typically found on a traditionalbusiness card) for the purpose of correlating said Contact Informationwith Telecommunication Call Events. Each Contact entry (i.e., vCard) hasvarious user-defined permissions associated with it that defines how theContact entry can be used by the system and users within a group. It isanother object of the present invention to allow group administrators,or similarly authorized users, to assign permission control to userswithin the group. This permission control allows specified users toperform search queries, and view or edit other users' ContactInformation within their organization. Every vCard contained within thegroup has a pre-defined owner of the Contact data where the owner ofsaid Contact data is provided with inherent default access permissionsunless otherwise designated by the administrator of the group or user.The permissions model includes, but is not limited to, the followingpermission attributes for each Contact entry: Full Control, Read-Only,Search Enabled/Disabled, and Modify.

It is an object of the present invention to provide a method and systemto search all of the fields contained in the Contact Information (i.e.,vCard) for the purpose of correlating and matching withTelecommunication Call Events either locally in the TelecommunicationDevice or remotely on the server or other computing device.

It is an object of the present invention to provide a method and systemto provide the association of Telecommunication Call Events with anypublic or private database record, specifically with the association ofeither White Pages or Yellow Pages (i.e., Points of Interest (POI))information with Telecommunication Call Events and vise-versa. It shouldbe noted that White Pages and Yellow Pages information is very similarto vCard information with minor field variations and a different datacompilation process. The White or Yellow Pages data fields aresearchable and capable of being correlated with Telecommunication CallEvents. In one embodiment, a Telecommunication Device received a callfrom telephone number (732) 792-4265 on Jun. 17, 2001 at 4:30 PM EST. Inthis embodiment, the Telecommunication Device received said telephonecall and synchronized the Telecommunication Call Events information(such as, but not limited to, the telephone number of caller, telephonenumber of called, time stamp when call was started, call duration, timestamp when call was ended, voice call, received call event, non-roamingcall, etc.) to an online networked server. Using a web browser, a useris able to view information about the White Pages (i.e., consumers andbusinesses) or Yellow Pages (i.e., business) listing that initiated thecall using the server's capability to correlate the received Caller-IDprovided telephone number with the telephone number stored in the Whiteor Yellow Pages database listing. This same object provides thecapability for viewing said correlated White or Yellow Pages databaselisting for said Telecommunication Call Events either locally on theTelecommunication Device or remotely, such as from another computingdevice or other Telecommunication Device.

It is an object of the present invention to provide a method and systemto search all of the fields contained in any database record or fieldfor the purpose of correlating and matching with Telecommunication CallEvents either locally in the Telecommunication Device or remotely on theserver or other computing device.

It is an object of the present invention to provide a method and systemto log and process Telecommunication Call Events, such as a telephonenumber that the Telecommunication Device is able to establish aconnection with while utilizing connections that are based on varioustypes of connections and protocols, such as PSTN, CDMA, GSM, GPRS, iDEN,TCP/IP, UDP, or the like. This includes, but is not limited to:International Access Numbers, International Direct Dialing (IDD) prefixincluding the Destination Country Code and Phone Number, Standard PhoneNumbers, International Phone Numbers, Information Call (411), OperatedAssisted Call (611), Distress Call (911), *69, *86, 11-digit phonenumbers in the US, *66, or the like.

It is an object of the present invention to provide a method and systemfor the association of Telecommunication Call Events with Contacts thathave other threads or associations with additional records. This objectallows for the indirect correlation of Telecommunication Call Eventswith these indirectly linked records, which include, but are not limitedto: Accounts, Opportunities, Forecasts, Leads, Tasks, Documents, Cases,other Events, or the like. In one embodiment, in a Customer RelationshipManagement (CRM) application, a Contact is associated or linked to anAccount. An Account (i.e., such as a Business Customer) may have aplurality of Contacts that are associated or linked with it (i.e., suchas a business account having multiple points of contact orrepresentatives). When viewing either the Contact or Accountinformation, it is possible with this invention to view at a glance the“Activity History” for either the Contact or Account. The ActivityHistory can display Telecommunication Call Events that are correlatedwith said Contact or Account, thus providing a detailed snap-shot of therecent interactions with the Contact or Account. It should beappreciated by those skilled in the art that the users of the group donot have to manually update their calls with Contacts of variousAccounts or directly with the Accounts as with prior art systems, sincethis invention provides an automated method and system for updating saidActivity History automatically.

It is an object of the present invention to provide a method and systemthat enables notifications that are triggered by Telecommunication CallEvents which are associated or linked to either a single or plurality ofdatabase records for the purpose of updating said database records bymeans of said notification. The notifications relate information orcontent to said Telecommunications Call Events. The notification can bedelivered to the local Telecommunication Device and/or a remotecomputing device. These notifications can be displayed 1). in real-timewhile a telephone call is in progress, 2). immediately after a telephonecall, 3). upon the execution of an application, process, or by openingan application window or clicking on an application link (i.e., such asa URL in a web browser), 4). at a predefined scheduled time period,either once or at reoccurring intervals, 5). at a specific geographiclocation or within a geographic range or area, 6). upon receiving ane-mail, SMS message, or instant message, 7). upon receiving a page,and/or 8). based on a user's current presence or status or a change inpresence or status, such as Available, Busy, On the Phone, etc., or thelike. In this same object of this invention, the invention providesnotifications that contain associations, references, or links todatabase records that are somehow correlated to the recentTelecommunication Call Events, such as by a telephone number, on theTelecommunication Device that is registered with the user. In oneembodiment, a user receives a telephone call on the wirelessTelecommunication Device from a Contact at a major Account called “AcmeManufacturing”. After the call has concluded, the system provides anotification display on the user's Telecommunication Device with a linkto: 1). the Contact Information (i.e., vCard) for the Contact at “AcmeManufacturing” that called, 2). the “Acme Manufacturing” Accountinformation, and 3). the opportunity information for the “AcmeManufacturing” Account. By means of the providing these three links(i.e., one for the Contact, one for the Account, and one for theOpportunity), the user of the Telecommunication Device is able to updatethe information that had changed due to the telephone call conversationthat was privy between both calling parties. The user is then able toupdate either the caller's Contact information (i.e., the preferredContact fields are illustrated in the preferred embodiments of theinvention), such as a new telephone number, mail address, contactdescription, or the like. The user is also able to update the Accountrelated information, during or after the telecommunication call, thatwas associated or had some degree of correlation to the previousTelecommunication Call Events, such as including, but not limited to thefollowing:

-   -   Account Name    -   Phone Number    -   Parent Account Information    -   Website    -   Account Number    -   Ticker Symbol    -   Type (i.e., such as private, public, etc.)    -   Industry: (i.e., Telecommunications, Media, Manufacturing, etc.)    -   Number of Employees    -   Annual Revenue    -   SIC Code    -   Billing Addresses    -   Voice Notes or Memos    -   Text Notes or Memos    -   Images    -   Customizable Forms (i.e., Account Information, Opportunity        Information, Contact Information such as vCard Information,        Field Specific Forms, or the like, that is related to the        Telecommunication Call Event)

The user is also capable of updating the Opportunity Information thatwas associated or had some degree of correlation to the previousTelecommunication Call Events, such as including, but not limited to thefollowing:

-   -   Opportunity Information:        -   Primary Information            -   Opportunity Owner (i.e., Contact Owner)            -   Opportunity Name            -   Account Name (i.e., the Account that is linked to this                Opportunity)            -   Type: (i.e., new, existing, etc.)            -   Lead Source        -   Deal Amount (i.e., the size of the deal)        -   Status (i.e., Open, Pending, Closed and Close Date)        -   Next Steps (i.e., Need estimate Update, etc.)        -   Stage (i.e., Needs Analysis, Proposal/Price Quote, Closed            Lost, Negotiation/Review, etc.)        -   Probability (%): (i.e., 80%, 90%, etc.)        -   Description

In a similar embodiment of this invention, the user received thenotification while the call was in progress on their laptop computer andwas able to update the information during the course of theconversation.

An additional part of this object provides for a user that calls orreceives calls from a corresponding Telecommunication Device to receivea notification event based on recent Telecommunication Events that werecorrelated with database records. These notification events includepending alerts or To-Do tasks apprising the user of theTelecommunication Device that un-correlated information needs to beupdated, based on recent Telecommunication Events that the system is notable to update and correlate autonomously. In one embodiment, a userreceiving or making a telephone call to a single or group of usersreceives a notification event that includes a pending To-Do task afterthat call has been terminated, determined by Telecommunication CallEvents.

The pending To-Do task requires the user to update the notes informationfor that contact in order to describe the call, through the means ofentering information into text entry forms that are specific to theuser's business, or by updating the deal flow of the account informationfor the particular account that is associated with the telephone number(i.e., Telecommunication Call Event). In another embodiment, while thetelephone call is in progress a user receives a reminder to update textentry forms about the contact they are having a conversation with, suchas updating the sales projections for the current account that isassociated with the user. In another embodiment, after a phone call hasconcluded, the authorized user of the Telecommunication Device will beapprised, by the Telecommunication Device's program that is running onsaid device, that a user should create voice-recorded notes in referenceto the phone call. In a similar embodiment, after a phone call hasconcluded, the Telecommunication Device's application that is running onsaid device will notify the user if they wish to copy and save for lateraccess a part of, or the entire, recorded voice phone call and associateit with the contact corresponding to the called or received phonenumber. The recorded phone call can reside locally on theTelecommunication Device and can also be synchronized or transferred tothe online server system for access via a web browser or customapplication program running on a computing device which is associatedwith various database records, such as vCard, Account Information,Opportunity Information, or the like.

It is an object of the present invention to provide a method and systemthat enables database records that have none or old time-stampedreferences to Telecommunication Call Events for the purpose oftriggering notifications based on a predefined temporal threshold forthe aging of each database record. This notification event can also bebased on the frequency of Telecommunication Call Events that relate to adatabase record. For example, in one embodiment an Account wasestablished with a company that represents a large Opportunity for thebusiness to sell their product to.

The account has a group of associated Contacts that are the key decisionmakers of the Account. Since time may be critical to closing this salefor this Account, this invention allows an aging trigger event to bedefined and triggered if a user within the organization does not callthe telephone numbers of any Contacts who are associated with theAccount within the predefined time limit set by the administrator of theorganization. In this embodiment, this can be used for capturing theTelecommunication Call Events for a particular user and can be appliedto users in the organization or department, or to a single user thatowns or uses a Telecommunication Device upon which the application isexecuted. In another embodiment, a user of an organization is requiredto call an Account at least once a week. If the user does not performthe task of calling the Account's Contact (i.e., from their vCard data)a notification will be sent to the administrator, or to the user thatinitiated the event, illustrating that the frequency of calls to thisAccount for the particular user fell below the set threshold of calls tothis Account for past predefined period of time.

It is an object of the present invention to provide a method and systemthat enables only one unique user account to be associated with one ormany unique Telecommunication Devices. This invention allows multipleusers to be associated with a single Telecommunication Device. Howeverthe preferred method of this invention is to allow only one user accountto be assigned to multiple unique Telecommunication Devices (i.e., sinceusers typically have more than one Telecommunication Device). Thisobject of this invention also enables the prevention of aTelecommunication Device from being registered by multiple useraccounts. This guarantees that Telecommunication Call Events that occurcan be correlated with one and only one user account at a time. In oneembodiment, when a user executes an application on the TelecommunicationDevice, the application will send a unique identifier, such as an ESNnumber, telephone number, or the like, to an online server that willregister the Telecommunication Device with the registered user thatauthenticated themselves and executed the application.

It is an object of the present invention to provide a method and systemthat displays an outgoing call history log of recent TelecommunicationsCall Events on a Telecommunication Device or other computing device,such as a desktop or laptop personal computer. This invention providesno limit on the number of outgoing calls that can be displayed. Thisobject of this invention enables the display of outgoing call history,including additional information and/or references or links that areassociated with the outgoing call history log item(s) of recentTelecommunication Call Events for a particular or group ofTelecommunication Device(s). These references or links connectTelecommunication Call Events with database records through the use ofcommon keys present in both the Telecommunication Call Events and thedatabase records. This invention allows partial or exact matches ofcommon keys. Common keys include Telecommunication Call Events, or thelike. For every outgoing call history item, typically denoted as aTelephone Number, other information can be displayed through thisinvention, such as, but not limited to the following Contactinformational fields that are correlated with the Telephone Number:Title, First Name, Middle Name, Last Name, Suffix, Company, Department,Job Title, Street Address, Street Address 2, Street Address 3, City,State, Postal Code, Country, Address' Latitude, Address' Longitude,Address' Altitude, etc. A plurality of unique Contact records can bedisplayed in this invention.

In addition to displaying the most prominent Contact Information, links(i.e., known as shortcuts) are provided for allowing users to updatevarious additional database records that have an association with theTelecommunication Call Event. These additional links or shortcutsinclude, but are not limited to the following database records:Accounts, Opportunities, Forecasts, Leads, Tasks, Documents, Cases,other Events, or the like. It is an object of this invention to allowthe updating or populating of the outgoing call history log informationby 1). real-time updates as Telecommunication Call Events are processed,2). scheduled ad-hoc and/or reoccurring time intervals, and/or 3).running an application or process such as a button or link (i.e., URL)that initiates a call history log update from an online server or localcomputing platform. In this same object of this invention, it ispossible to read database records, such as the Opportunities recorddatabase, which has a common association using the TelecommunicationCall Events as the common key. Using this link or shortcut, the user isable to quickly and effectively review and update database records thatare related to recent Telecommunication Device activities without havingto first search for said database record information. The retrieval ofadditional database records can either be cached locally or accessedupon demand. This object of the invention also provides for mapping anydatabase record that has geographical information associated with itthrough the call history.

It is an object of the present invention to provide a method and systemthat enables the Telecommunication Device or other computing device,such as a desktop or laptop personal computer, to display an incomingcall history log of recent Telecommunications Call Events. Thisinvention provides no limit on the number of incoming calls that can bedisplayed. This object of this invention enables the display of incomingcall history including additional information and/or references or linksthat are associated with the incoming call history log item(s) of recentTelecommunication Call Events for a particular or group ofTelecommunication Device(s). These references or links connectTelecommunication Call Events with database records through the use ofcommon keys present in both the Telecommunication Call Events and thedatabase records. This invention allows partial or exact matches ofcommon keys. Common keys include Telecommunication Call Events, or thelike. For every incoming call history item, typically denoted as aTelephone Number, other information that can be displayed through thisinvention includes, but is not limited the following Contact informationfields that are correlated with the Telephone Number: Title, First Name,Middle Name, Last Name, Suffix, Company, Department, Job Title, StreetAddress, Street Address 2, Street Address 3, City, State, Postal Code,Country, Address' Latitude, Address' Longitude, Address' Altitude, etc.A plurality of unique Contact records can be displayed in thisinvention.

In addition to displaying the most prominent Contact Information, links(i.e., known as shortcuts) are provided for allowing users to updatevarious additional database records that have an association with theTelecommunication Call Event. These additional links or shortcutsinclude, but are not limited to the following database records:Accounts, Opportunities, Forecasts, Leads, Tasks, Documents, Cases,other Events, or the like. It is an object of this invention to allowthe updating or populating of the incoming call history log informationby 1). real-time updates as Telecommunication Call Events are processed,2). scheduled ad-hoc and/or reoccurring time intervals, and/or 3).running an application or process such as a button or link (i.e., URL)that initiates a call history log update from an online server or localcomputing platform. In this same object of this invention, it ispossible to read database records, such as the Opportunities recorddatabase, which has a common association using the TelecommunicationCall Events as the common key. Using this link or shortcut, the user isable to quickly and effectively update database records that are relatedto recent Telecommunication Device activities without having to firstsearch for said database record information. The retrieval of additionaldatabase records can either be cached locally or accessed upon demand.This object of the invention also provides for mapping any databaserecord that has geographical information associated with it through thecall history.

It is an object of the present invention to provide a method and systemthat enables the Telecommunication Device or other computing device,such as a desktop or laptop personal computer, to display a missed callhistory log of recent Telecommunications Call Events. This inventionprovides no limit on the number of missed calls that can be displayed.This object of this invention enables the display of missed call historyincluding additional information and/or references or links that areassociated with the missed call history log item(s) of recentTelecommunication Call Events for a particular or group ofTelecommunication Device(s). These references or links connectTelecommunication Call Events with database records through the use ofcommon keys present in both the Telecommunication Call Events and thedatabase records. This invention allows partial or exact matches ofcommon keys. Common keys include Telecommunication Call Events, or thelike. For every missed call history item, typically denoted as aTelephone Number, other information can be displayed through thisinvention, including, but not limited to the following Contactinformation fields that are correlated with the Telephone Number Title,First Name, Middle Name, Last Name, Suffix, Company, Department, JobTitle, Street Address, Street Address 2, Street Address 3, City, State,Postal Code, Country, Address' Latitude, Address' Longitude, Address'Altitude, etc. A plurality of unique Contact records can be displayed inthis invention. In addition to displaying the most prominent ContactInformation, links (i.e., known as shortcuts) are provided for allowingusers to update various additional database records that have anassociation with the Telecommunication Call Event.

These additional links or shortcuts include, but are not limited to thefollowing database records: Accounts, Opportunities, Forecasts, Leads,Tasks, Documents, Cases, other Events, or the like. It is an object ofthis invention to allow the updating or populating of the missed callhistory log information by 1). real-time updates as TelecommunicationCall Events are processed, 2). scheduled ad-hoc and/or reoccurring timeintervals, and/or 3). running an application or process such as a buttonor link (i.e., URL) that initiates a call history log update from anonline server or local computing platform. In this same object of thisinvention, it is possible to read database records, such as theOpportunities record database, which has a common association using theTelecommunication Call Events as the common key. Using this link orshortcut, the user is able to quickly and effectively update databaserecords that are related to recent Telecommunication Device activitieswithout having to first search for said database record information. Theretrieval of additional database records can either be cached locally oraccessed upon demand. This object of the invention also provides formapping any database record that has geographical information associatedwith it through the call history.

It is an object of the present invention to provide a method and systemthat enables the Telecommunication Device to update the local addressbook based on a statistical analysis of the Telecommunication CallEvents associated with a user (i.e., since the user can own multipleTelecommunication Devices) or with the Telecommunication Device. TheTelecommunication Device's address book is an array of Contacts that canbe stored locally on the Telecommunication Device for the purpose ofaccessing the vCard contents in real-time without a high-degree ofaccess latency as typically observed when requesting data through awireless network. This object of this present invention provides themeans for calculating which Contacts are associated with aTelecommunication Device's Telecommunication Call Events and thefrequency and age of updates for the purpose of ordering the user'sContact (i.e., vCard) information from the most active to the leastactive for a given user. This ordering is calculated in real-time asTelecommunication Call Events are recorded. Since most TelecommunicationDevices have a finite number of Contact (i.e., vCard) allocations thatcan be stored locally in the Telecommunication Device, a maximum numberof address book Contacts has to be established and may vary acrossdifferent Telecommunication Devices. Since the user of theTelecommunication Device can have a larger base of Contacts than theTelecommunication Device can support, this maximum number willartificially limit how many Contacts can be synchronized or transferredto the Telecommunication Device.

The synchronization or transfer process for updating theTelecommunication Device's address book can be implemented 1). inreal-time as Telecommunication Call Events are processed, 2). atscheduled ad-hoc and/or reoccurring time intervals, 3). upon running anapplication or process such as a button or link (i.e., URL) thatinitiates an address book update, and/or 4). based on a percentagedifference threshold in which the current address book listing differsfrom the new address book listing, or the like. Thus this object of thisinvention uses Telecommunication Call Events to calculate and thenpopulate which Contacts are stored in the local address book of theTelecommunication Device. This object of this invention also provides aprovision to for certain high-priority Contacts, such as emergencyContacts, to override other lower-priority Contacts, in the event thatthese Contacts normally would not be stored in the address book due tostorage size limitations, but are required to be store locally on theTelecommunication Device.

It is an object of the present invention to provide a method and systemthat enables the correlation or matching and/or extrapolation (i.e.,partial matching) of Telecommunication Call Events with either localand/or remote database records. Since Telecommunication Call Events varyacross different Telecommunication Devices, Telephone (i.e., landline)and Wireless Carriers, Telecommunication Standards (i.e., CDMA, GSM,iDEN, etc.), or the like, it is paramount to provide a means tocorrelate either exact or partial matches between Telecommunication CallEvents and database records. This object of this invention provides themeans to allow partial match correlations between Telecommunication CallEvents and database records, such as Contact, Account, or the like. Thefollowing points provide additional dependent objects that increase theaccuracy of the matching of exact and/or partial match correlations withsaid database records:

-   -   1. Extrapolate NPA (i.e., area code) Information for        Telecommunication Events (i.e., Caller-ID) when said        Telecommunication Events do not provide NPA information for        local calls. Thus, it is an object of the invention to add NPA        information to Telecommunication Events that do not include said        NPA information, where the NPA information is derived from the        local telephone number of the Telecommunication Device.    -   2. Allow partial matches for Telecommunication Devices contained        within a Private Branch Exchange (PBX) system. For example, ANI        (Automatic Number Identification or Caller-ID) provides the        Direct Inward Dialing (DID) trunk from the PBX on which the call        originated and not the actual PBX extension of the        Telecommunication Device. Thus, it is an object of this        invention to allow the partial match searches for telephone        numbers that have a high degree of correlation to a particular        or set of database records (i.e., Contact, Account, etc.). These        partial correlations can be presented to the user in a different        manner than exact match correlations.    -   3. Provide a mechanism that allows the user to confirm and/or        correct partial match correlations and enabling the user to        select the correct database record or records to associate with        the exact or partial Telecommunication Call Event (e.g., a user        can select from a list the Contact, Account, or the like, that        is associated with the telephone number, etc.).

It is an object of the present invention to provide a method and systemthat enables the user to match or choose which Telecommunication CallEvents are to be associated with various database records. This canoccur on the Telecommunication Device after a Telecommunication CallEvent has ended (e.g., the end of a phone call), during aTelecommunication Call Event (e.g., during a phone call), or when a userauthenticates and is authorized to sign in to a remote application, suchas a custom application or web browser, for the purpose of updating PIM(Personal Information Management), or the like, information. Forexample, in one embodiment, a user can receive a number of phone callsfrom users that do not have any Caller-ID information and thus no phonenumber is provided. When the user signs in to their organization using astandard web browser, a list of uncorrelated Telecommunication CallEvents will be listed so that the user can manually associate theuncorrelated Telecommunication Call Events with current databaserecords, such as vCard contacts, or so that the user can create a newdatabase record, such as a user vCard or business Account, for thepurpose of associating the Telecommunication Call Event with a databaserecord for reports, notifications, or like.

It is an object of the present invention to provide a method and systemthat provides a plurality of reports that utilize the TelecommunicationCall Events for either a particular Telecommunication Device and/or user(i.e., which may use a plurality of Telecommunication Devices). Thesereports include numerous combinations of the Telecommunications CallEvents, in addition to correlating said Telecommunication Call Eventswith a plurality of database records. Reports can be a critical part ofthis invention, as those skilled in the art will agree. Making use of amultitude of Telecommunication Call Events is only possible byrecognizing and illuminating the patterns and frequency ofTelecommunication Call Events with their respective database records tothe end user in a clear and simple format, which would not otherwise bepossible if only the raw data is displayed. The invention provides aplurality of reports, without limitation, and including the following:

-   -   Incoming Calls Report    -   Outgoing Calls Report    -   Missed Calls Report    -   Contact Reports        -   Contact Call History        -   Last Time Group of Contacts were Called        -   Total Contact Call Time        -   Contact Normalized Call Time vs. User's Total Call Time        -   % of Calls that are Personal vs. Business    -   New Account Report—Customers that are being Serviced    -   Active Contacts—Current Contacts that are Active    -   Neglected Contacts—Contacts that need Attention    -   Active Accounts—Current Accounts that are Active    -   Neglected Accounts—Accounts that need Attention    -   Aging Reports—Contacts, Accounts, Opportunity, Leads, Forecast    -   Return Call Response Time—The amount of time between a Contact        calling a user and leaving a voice mail message, to the time the        user returned the call to the Contact.    -   Sales Reports    -   Account and Contact Reports    -   Opportunity and Forecast Reports    -   Support Reports    -   Lead Reports    -   Fields Service Reports    -   Wireless Airtime Billing Report—Associated wireless airtime        charges and the user appropriate account.    -   Opportunity ROI Report

Based on recorded call information related to a specified Account'sOpportunity that has Contacts associated with said Account. Each AccountOpportunity has a monetary value and this report provides theTelecommunication Call Events information related to said Opportunities,such as including, but not limited to: Time of Calls, Frequency ofCalls, Frequency of Return Calls from Contact, Return Call ResponseTime, or the like.

It is an object of the present invention to provide a method and systemthat provides a plurality of maps of varying resolution and sizereporting events, patterns, and/or frequencies of Telecommunication CallEvents and their respected associated database records illustrating aspatial thematic representation of the data. In one embodiment, it ispossible to spatially view the call history for a particular user andtheir Telecommunication Devices over a given period of time. In anotherembodiment, a thematic map of Accounts that the business organizationhas won or closed is illustrated spatially, which graphically depictsthe amount of calls and visits made in the process of winning eachAccount.

It is an object of the present invention to provide a method and systemthat provides a plurality of alerts and exceptions that are triggeredbased on the changes, modifications, or creation of TelecommunicationCall Events and related database records. Alerts and Exceptions areconfigured by authorized users with the appropriate privileges tocreate, modify, or remove alert and exceptions for individual users ofTelecommunication Devices. For example, in one embodiment, a user canrequest to be alerted when a specified Telecommunication Call Eventoccurs, such as to be notified when a call is made to a specifiedtelephone number and/or NPA/NXX designation, such as with use a PBXphone system, or when a particular Contact is called or the Contactcalls the user at one of their Telecommunication Devices (i.e., denotedas Telefencing). In another embodiment, notifications and alerts areused when a user's Telecommunication Device(s) have used a specifiedamount of airtime or bandwidth for a given period, or if the user'sTelecommunication Device transitions from a roaming to non-roaming stateor vise-versa. Additionally, this invention enables an alert whenTelecommunication Call Events are made to a particular TelecommunicationDevice to notify a specific user or group of users that an action isrequired which is related to the user initiating the TelecommunicationCall Events and/or to the user of said Telecommunication Device. In oneembodiment, this alert can illustrate that a sales deal has been closedor moved to a different deal-stage. This invention allows alerts to besent using various different communication methods, such as, and withoutlimitation: E-Mail, SMS Messages, Instant Message, Telephone Call, Page,or the like.

It is an object of the present invention to provide a method and systemthat provides the capability to access or download relatedTelecommunication Call Events and/or their associated database recordsto a computer device in both processed and raw formats. In oneembodiment, a user is allowed to download Telecommunication Call Eventsin a comma delimited format (i.e., CSV format) for the purpose ofintegrating said information into a spreadsheet for the tabulation ofvarious fields that are not typically exposed through an online websitereport. This provides the user with ultimate flexibility in viewing theTelecommunication Call Events, such as the total call duration for aspecified range of time. In another embodiment, downloading theTelecommunication Call Events and their associated database recordsenable the updating of Personal Information Management (PIM)applications, such as updating Contacts, Journals, Calendar Events,Tasks, or the like.

It is an object of the present invention to provide a method and systemthat provides the capability to for the Telecommunication Device runningan application to perform searches which can be transferred orsynchronized to an online server system for later retrieval via theonline server system, remote computer, or on the TelecommunicationDevice. It is an additional object of this invention to allow thesearches to be performed on a remote computer that interfaces with theonline server system and allows searches to be cached on the onlineserver system which are later synchronized or transferred to theTelecommunication Device or remote computer. It is a further object ofthis present invention to allow the searches to include spatial relatedsearches, such as Yellow Pages or White Pages searches, or POI searchesfor creating Routes on the phone, in order to allow the applicationrunning on the Telecommunication Device or remote computing device totransfer the searched places to the online server system or remotecomputer.

For example, in one embodiment, a user that is authenticated andauthorized by an application running on a wireless telephone is able toaccess the Internet and search for a Point of Interest (POI) or Place(e.g., such as a restaurant, airport, or the like). Those searchedPlaces are then transferred to an online server system. When the user isauthenticated and authorized via a web browser on a different computingdevice that has access to said online server system, the user is thenable to retrieve and access the Places that were recently searched foron the user's wireless telephone. Additionally, from the web browser,the user is able to save the Place information into their own personaldatabase and add additional objects of information, such as text notes,documents, articles, or the like, about the Place. It would beappreciated by those skilled in the art that searches performed on theTelecommunication Device are transferred to a remote database for futureretrieval from disparate computing devices that have access to an onlineserver system that stores the data records.

It is an object of the present invention to provide a method and systemthat provides the capability for searching Places (i.e., POIs), savingPlaces, creating Routes/Directions, and saving Routes/Directions using acomputing platform, which may include a Telecommunication Device, thatis connected to an online server system, and then accessing said savedor searched Places, or saved or searched Routes/Directions from aTelecommunication Device. It is an additional object of this inventionto allow the accessed Places and/or Route/Direction information to beintegrated and associated with the Telecommunication Device's specificinterfaces, such as GPS, Address Book, Voice Recorder, Camera, PhoneCapability, SMS, or the like. The associated data (e.g., Place and itsassociated Camera Image(s), Route and its associated Camera Image(s),etc.) derived from the Telecommunication Device's specific interfacescan then be transferred or synchronized to the online server system orremote computer. After the synchronization or transfer process, therecently searched Place and/or Route/Direction information that isstored on the online server system now has additional database records(i.e., Camera Images, etc.) that were derived from the TelecommunicationDevice associated with the Place and/or Route/Direction information.

It is an additional object of this invention to allow aTelecommunication Device to generate real-time maps based on retrievedPlaces' address information which was searched or saved on the onlineserver system. It is an additional object of this invention to modifydriving directions in real-time, while using a Telecommunication Device,which are based on driving directions that were searched or saved on theonline server system. It is an additional object of this invention tocreate new driving directions in real-time, while using aTelecommunication Device, which are based on Places that were searchedor saved on the online server system. In one embodiment, a user that hasa dentist appointment in an hour first signs in to a web page byentering a username and password. The user searches for the dentistusing the web browser that is connected to an online server system thathas access to Places (i.e., POIs, Yellow Pages, White Pages, etc.)information. By noting the general location and area of the dentistoffice and without saving the Place (i.e., the dentist office), the usertakes their wireless telephone with them and drives to the dentistoffice. During the trip to the dentist office the user gets lost andneeds to find his way to the location of the dentist office.

The user signs in to an application that is running on the wirelessphone and retrieves his recently searched Places that were searched foron the web. The user is then able to quickly map the dentist office(i.e., the Place) and even directly call the dentist office (i.e., sincethe Place information contains the phone number of the dentist), in theevent that he might be late for his appointment. The user can do allthis from his wireless telephone without having to perform a new searchon the phone or call 411 to get the dentist office's phone number.Additionally this invention provides the user with the ability todynamically create a route from their current location (i.e., routeorigin) to the dentist office (i.e., route destination) without havingto enter in the destination address, which is very cumbersome on awireless phone. In another embodiment, a user is able to retrieve aPlace that was searched for and saved to the online server system fromtheir wireless telephone by simple requesting recently saved Places byclicking on a menu option on their wireless telephone. After retrievingand selecting the desired Place the user is able to take a picture usingthe camera that is integrated into the wireless telephone, and thenassociate the picture with said Place on the wireless telephoneapplication. Additionally, the application that is running on the user'swireless telephone will then transfer or synchronize the picture to theonline server system so that when the user accesses the Place using aweb browser on a laptop, the user will be able to see the picture thatthey took associated with the particular Place. Similarly, in anotherembodiment, the Place was not searched for on the web, but instead onthe wireless phone. In a similar embodiment, a recently saved route wasretrieved onto the wireless telephone and a set of pictures that weretaken on the wireless phone were associated with the route andtransferred or synchronized to the online server system for laterviewing.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a network system for providing a communicationchannel between various wireless and landline computing devices;

FIG. 2 illustrates one embodiment of the present invention showing apersonal computer with an integrated web browser;

FIG. 3 illustrates one embodiment of the present invention of a wirelessTelecommunication Device and an accompanying high-level block diagram ofa wireless Telecommunication Device;

FIG. 4 illustrates one embodiment of linking Contacts in a database withsynchronized call history or logged calls from a wirelessTelecommunication Device;

FIG. 5 illustrates one embodiment of the main sign-in page of an onlinewebsite for accessing and managing Telecommunication Devices, Contactdata, Accounts information, Account Opportunities, and other data andreports that typically relate to said data;

FIG. 6 illustrates one embodiment of the Contacts home page in thewebsite;

FIG. 7 illustrates one embodiment of a list of all Contacts, or a subsetof all Contacts filtered by a given alphabetical letter, or numerically,or the like;

FIG. 8 illustrates one embodiment for displaying detailed Contactinformation for a particular Contact and the associated call history forsaid Contact;

FIG. 9 illustrates one embodiment for displaying a page to edit allfields of a Contact's information;

FIG. 10 illustrates one embodiment for creating a new Contact;

FIG. 11 illustrates one embodiment for selecting a predefined date andtime range for the purpose of generating various reports and alsoillustrates a list of phone statistics for a user and their team;

FIG. 12 illustrates one embodiment for viewing a list of incoming,outgoing, or missed calls and the ability to print or export the datarelated to said calls;

FIG. 13 illustrates one embodiment for finding various map relatedobjects on a map, such as an address, a place (i.e., Point of Interestwhich is also known as a POI), an area code with or without prefix data,map coordinates, or the like;

FIG. 14 illustrates one embodiment for displaying a list of partialmatches for a searched place (i.e., POI);

FIG. 15 illustrates one embodiment for displaying a map resulting from afound address, POI, area code/prefix location, or map coordinates andthe ability to pan or zoom around on the map or add the mapped point toa planned route's destination or origin;

FIG. 16 illustrates one embodiment for entering, or selecting, originand destination addresses in order to plan and compute a route;

FIG. 17 illustrates one embodiment for displaying a map or a route,travel time, driving distance, and driving directions for a plannedroute;

FIG. 18 illustrates one embodiment for displaying a particular user'saccount information;

FIG. 19A illustrates one embodiment for displaying the personalinformation of a particular user;

FIG. 19B illustrates one embodiment for displaying the group permissionssettings for a particular user;

FIG. 19C illustrates one embodiment for displaying the login history fora particular user;

FIG. 20 illustrates one embodiment for viewing and/or removingTelecommunication Devices that are associated and assigned to aparticular user's account;

FIG. 21 illustrates one embodiment for associating a single or group ofTelecommunication Devices to a particular user's account;

FIG. 22 illustrates one embodiment for changing the mobile access PINfor a user's Telecommunication Devices;

FIG. 23 illustrates one embodiment for displaying to a user a summary ofthe user's team members in an organization and their respectivetop-level account information and settings;

FIG. 24 illustrates one embodiment for changing the password policiesfor a particular user;

FIG. 25 illustrates one embodiment for displaying the total disk usage,such as that used for contact information, for an organization and foreach individual user in the organization;

FIG. 26 illustrates one embodiment for displaying a menu on aTelecommunication Device for searching yellow pages information,retrieving user specific Place information, and recently viewed or savedPlace and Trip information;

FIG. 27 illustrates one embodiment for displaying a Map of a Place on aweb page;

FIG. 28A illustrates one embodiment for displaying the recently viewedor saved Places on the Telecommunication Device that were retrievedeither locally from the Telecommunication Device or remotely from anonline server system;

FIG. 28B illustrates one embodiment for displaying the detailedinformation for a Place that was retrieved either locally on theTelecommunication Device or remotely from an online server system;

FIG. 29 illustrates one embodiment for displaying the recently viewed orsaved Trips on the Telecommunication Device that were retrieved eitherlocally from the Telecommunication Device or remotely from an onlineserver system; and

FIG. 30 illustrates one embodiment for displaying a representation of aTrip and the associated data that was acquired while using theTelecommunication Device on said Trip;

DETAILED DESCRIPTION OF THE EMBODIMENTS

The present invention provides a method and system for capturing,processing, mapping, reporting, and/or displaying Telecommunication CallEvents that occur on either landline or wireless TelecommunicationDevices (i.e., POTS telephones, cellular telephones, 3G-based wirelessdata/telephones, etc.), by which the information content of saidTelecommunication Call Events can be presented locally on theTelecommunication Device or remotely on a desktop or laptop computerusing a computer application or a web browser that can interface to anonline networked server. This invention also provides for thesynchronization or transfer of said Telecommunication Call Events eitherlocally or remotely to another computing platform. This invention alsoprovides the ability to associate said Telecommunication Call Eventswith various database records for a multitude of purposes, such asmatching Telecommunication Call Events with a Contact database. Thisinvention also enables associating Telecommunication Call Events withContacts and other threads, such as Accounts, Opportunities, Forecasts,Leads, Tasks, Documents, Cases, other events, or the like. Thisinvention also provides alerts, exceptions, and notifications that arerelated to the Telecommunication Call Events and associated database,records. The present invention may be embodied in an online andTelecommunication Device application, such as the “AtlasBook”application owned and licensed by Networks In Motion, Inc. of Irvine,Calif.

The preferred embodiments of the present invention will now be describedin detail with references to FIGS. 1-30.

FIG. 1 and FIG. 2 illustrate high-level diagrams of a suitable computingand networking environment in which the various embodiments of thepresent invention may be implemented. The preferred embodiment of thepresent invention will be described in the general context of anapplication that executes on an operating system in conjunction with apersonal computer or server, but those skilled in the art will realizethat this invention may also be implemented in combination with otherprogram modules. Program modules typically include routines, programs,data structures, etc. that perform particular tasks or implementparticular abstract data types. This invention is not limited to atypical personal computer, but may also be utilized with other computingsystems, such as handheld devices, mobile lap top computers, wirelessphones, in-vehicle navigation systems, programmable consumerelectronics, mainframe computers, distributed computer systems, etc.,and the like.

FIG. 1 is a network block diagram illustrating the connection (125 &101) of both wireless 100 and wired 126 Telecommunication devices to anApplication Service Provider (ASP) 123, also referred to as an onlineserver system. This online server system may be configured at a singlelocation and on a single computer, or can be configured as a distributedcomputer system and at different locations. The wireless MobileTelecommunication Devices 100 are wirelessly connected 101 to a nearbywireless base station 102, which are typically connected or have accessto 105 the Internet, Intranet, or Extranet 106. Additionally, a landlineTelecommunication Device 126 is typically connected to a nearby centraloffice 124 which is connected or has access to 123 the Internet,Intranet, or Extranet 106. Additionally, the Application ServiceProvider (ASP) 123 also has access 109 to the Internet, Intranet, orExtranet 106. The ASP 123 generally consists of a front-end firewall andXML router 113 which itself has access (111 & 114 & 119) to other localcomputing modules, such as a database 112, POI server 115, geocodingserver 116, mapping server 117, and webpage client server 118. Theweb-server front-end 118 can be connected to the outside Internet,Intranet, or Extranet 106 either through the local front-end firewall113, or as in this embodiment, via 120 the web server 121, which isconnected 122 directly to the Internet, Intranet, or Extranet 106 byusing a software firewall which is well known to those skilled in theart. Additionally, either mobile 104 or landline 108 computing devices,such as a personal computer, are connected to the Internet, Intranet, orExtranet 106, either directly 107 or through a wireless connection 103and base station 102.

FIG. 2 illustrates a typical personal computer 150, that includes acentral processing unit (CPU) 173, video adapter 172, hard disk drive157, optical disk 158, serial port 159, magnetic disk drive 163, systembus 156, and network interface 176→177 & 167 & 169→109. The hard diskdrive 157 typically refers to a local non-volatile storage system forstoring large amounts of data, such as a web browser program files orcookies or a user's Contact data. The optical disk 158 typically refersto a CD-ROM disk used for storing read-only data, such as aninstallation program. The serial port interface 159 is typically used toconnect 161 the computer 150 to external devices 160, such as akeyboard, mouse, and graphical touch screen interface, and also canconnect 164 to positioning devices 165, such as a GPS receiver. Thekeyboard and mouse 160, amongst other input devices 165, enable users toinput information into the computer 150. The connection 161 & 164 cablescan include a serial cable or universal serial bus (USB) cable. Otherinput devices, that are not shown, may include a joystick, scanner,camera, microphone, or the like. The magnetic disk drive 163 istypically used to store small amounts data, in comparison to a hard 157or optical 158 disk drive, and typically lacks the data transfer ratesof those other storage drives, but it enables both readable and writablecapability.

The hard disk drive 157, optical disk drive 158, serial port interface159, and magnetic disk drive 163 are all preferably connected to themain system bus 156 of the computer 150 for transferring data. A monitor170 or other type of display device, such as a LCD display, is connected171 to the computer system's 150 video adapter 172, which is connectedto the system bus 156. Additional peripheral output devices, which arenot included in this embodiment, such as a printer, speaker, etc., canalso be connected to a personal computer 150. The system bus 156 alsoconnects to the network interface 176, central processing unit (CPU)173, and system memory 151. The system memory 151 contains both randomaccess memory (RAM) 153, and read only memory (ROM) 152, that typicallyconsists of the BIOS (Basic Input/Output System) of the computer,necessary for containing basic routines that enable the transfer ofinformation between elements within the personal computer 150. The RAM153 stores a number of program modules, such as the web browser andsynchronization applications 155, and the Operating System 154 of thepersonal computing device 150 or personal computer 150. One example ofsuch a program module 155 would be a web browser that is connected tothe “AtlasBook” server that was previously mentioned.

FIG. 3 illustrates a next generation wireless Telecommunication Device311 in accordance with a preferred embodiment of the present invention,which preferably includes a display 314, an antenna 313, and a keypad312. The next generation wireless Telecommunication Device 311 & 300, asillustrated in FIG. 3, provides a foundation 302 for running programs orapplications that can access the Telecommunication Device's 311 internalinterfaces, such as the Bluetooth 309, Speech/Audio Codec 308, GPSInterface 307, TAPI (Telephony Application Program Interface) 306Interface, Screen/Keypad API (Application Program Interface) orInterface 305, Camera API 304, or the like as well known to those thatare skilled in the art. As those that are skilled in the art willappreciate, a Telecommunication Device (300 & 311) will also includescheduling/timers 310 for scheduling specific events as is provided withstandard computing platforms. Additionally, next generationTelecommunication Devices (300 & 311) have graphical user interfaces(GUI) 301 for applications to allow user input using a graphical display314. As people skilled in the art will appreciate, these next generationTelecommunication Devices provide the means to access theTelecommunication Devices' internal APIs using a middleware 302platform, such as J2ME or BREW, which are both well known to thoseskilled in the art. This simplifies the development process since thereis significant support for obtaining developer's access to theTelecommunication Devices internal APIs, such as the TAPI interface formaking telephone calls and capturing call logs.

Standard Telecommunication Devices provide an internal call loggingcapability, such as incoming call history 400, missed call history 401,and outgoing call history 402. Prior art solutions enabled the storageof vCard contact data on the Telecommunication Device, which is usuallystandard for wireless Telecommunication Devices. As those skilled in theart will appreciate, this invention provides the means to first run anapplication on the Telecommunication Device for the purpose ofcollecting Telecommunication Call Events, by using eitherTelecommunication Device timers 310, or by having the TelecommunicationDevice trigger the application when a particular Telecommunication CallEvent occurs, such as when a telephone call is received, transmitted, orthe like. As illustrated in FIG. 1, the wireless TelecommunicationDevice 100 is indirectly connected to the ASP server 123 preferably bymeans of the Internet, Intranet, or Extranet 106. This provides apathway for the synchronization or transfer of Telecommunication CallEvents that are captured or recording on the Telecommunication Device tothe ASP server 123. This transfer or synchronization process can occurin real-time or stored and then forwarded at a later time as previouslymentioned in this invention.

Once the Telecommunication Call Events have been transferred to the ASPserver 123, the ASP server 123 can then correlate said TelecommunicationCall Events with Contact data that is also located on the ASP server 123system. Using the Telecommunication Call Events history, it is possibleto correlate said history with actual contact data that is stored in theASP server 123 system. For example, in one embodiment, a user many have1,000 Contacts' data (i.e., vCard data) stored on the online ASP 123system. As illustrated in FIG. 4 Contact data consists of various userspecific fields, including but not limited to the following:

Typical Contact (vCard) Data Fields:

-   -   Title    -   First Name    -   Middle Name    -   Last Name    -   Suffix    -   Company    -   Department    -   Job Title    -   Business Street    -   Business Street 2    -   Business Street 3    -   Business City    -   Business State    -   Business Postal Code    -   Business Country    -   Business Latitude    -   Business Longitude    -   Business Datum    -   Business Altitude    -   Business SIC Code    -   Home Street    -   Home Street 2    -   Home Street 3    -   Home City    -   Home State    -   Home Postal Code    -   Home Country    -   Home Latitude    -   Home Longitude    -   Home Datum    -   Home Altitude    -   Other Street    -   Other Street 2    -   Other Street 3    -   Other City    -   Other State    -   Other Postal Code    -   Other Country    -   Other Latitude    -   Other Longitude    -   Other Datum    -   Other Altitude    -   Assistant's Phone    -   Business Fax    -   Business Phone    -   Business Phone 2    -   Callback    -   Car Phone    -   Company Main Phone    -   Home Fax    -   Home Phone    -   Home Phone 2    -   ISDN    -   Mobile Phone    -   Other Fax    -   Other Phone    -   Pager    -   Primary Phone    -   Radio Phone    -   TTY/TDD Phone    -   Telex    -   Account    -   Anniversary    -   Assistant's Name    -   Billing Information    -   Birthday    -   Business Address PO Box    -   Categories    -   Children    -   Directory Server    -   E-mail Address    -   E-mail Type    -   E-mail Display Name    -   E-mail 2 Address    -   E-mail 2 Type    -   E-mail 2 Display Name    -   E-mail 3 Address    -   E-mail 3 Type    -   E-mail 3 Display Name    -   Gender    -   Government ID Number    -   Hobby    -   Home Address PO Box    -   Initials    -   Internet Free Busy    -   Keywords    -   Language    -   Location    -   Manager's Name    -   Mileage    -   Notes    -   Office Location    -   Organizational ID Number    -   Other Address PO Box    -   Priority    -   Private    -   Profession    -   Referred By    -   Sensitivity    -   Spouse    -   User 1    -   User 2    -   User 3    -   User 4    -   Web Page

It should be appreciated by those skilled in the art that Contact datahas a plurality of telephone data, such as mobile, car, home, or thelike, telephone fields in typical Contact data. As illustrated in FIG. 4this Contact data may consist of Name (417 & 412 & 406), Account (418 &413 & 407), Primary Telephone (419 & 414 & 408), Mobile Telephone (420 &415 & 409), and Fax (421 & 416 & 410) fields, amongst other variousfields 411 that were previous noted. Any given user can have a pluralityof Contacts (403 & 404 & 405) that are associated with either a singleuser or group of users in an organization or across multipleorganizations. This Contact Data can also embody Point of Interest (POI)records, such as waypoints, or the like, since a Contact Data record isvery similar to a phonebook listing (i.e., White Pages or Yellow Pages).As those skilled in the art know, Contact Data, White Pages, and YellowPages records can be categorized together with very similar fields.

As further illustrated in FIG. 4, the preferred embodiment of thepresent invention provides the linking, either by implicit or explicitthreads or links (422 & 423 & 424), between call history (400 & 401 &402) and Contact Data (403 & 404 & 405). For example, an incoming callhistory telephone number (949-555-1213) can be linked or threaded 422 toa Contact 403 or group of Contacts, which may include POIs, or the like.Additionally, both missed call history 401 and outgoing call history 402can also have threads or links (423 & 424) to various Contacts (404 &405) or groups of Contacts.

In the preferred embodiment, a Telecommunication Device runs or executesa program that collects and transfers Telecommunication Call Events inreal-time, on schedule, at predefined intervals, or the like, for thepurpose of processing the data, in this embodiment, at the ASP server123 system. This unique approach enables the ability to provide amechanism on the ASP server 123 system to display said TelecommunicationCall Events in a plurality of methods. FIG. 5 illustrates such amechanism as the main home page 510 of a website after a user has beenauthenticated and authorized by the system. The web page 500 of the ASPserver 123 system displays a row of headers, such as Home 518, Contacts519, Leads 520, Accounts 521, Opportunities 522, Call History 523,Search 524, Find on Map 525, Directions 526, and Reports 527. Each maintab, such as Contacts 519, provides a submenu of information related tosaid tab subject or to the main essence of the application. For example,in this illustration the Contacts Tab 519 provides a submenu directlyrelated to Contacts that allows a user to create a New Contact 511, NewLead 512, New Account 513, and New Opportunity 514. Also provided in theContacts Tab's 519 submenu are functions that indirectly referenceContacts, such as allowing a user to view its Incoming Calls 515,Outgoing Calls 516, and Missed Calls 517.

This page also indicates the name of the user that is signed in to thewebsite 532 and its organization 533, in addition to the current date534. Additionally, each web page 500 provides common functions, such asby the Setup 528, Help 529, Trash Bin 530, and Logout 531 links to otherweb pages 500. Other common features include the Search field 501, MyRecent Contacts 502, My Recent Places 509, and the Last Activity 503consisting of the user's recent activity within the web page 500. TheLast Activity 503 provides a cache of all recently accessed Contacts504, Maps or Places 508, Routes 507, Opportunities 506, Leads, Accounts505, Call History, or the like. My Recent Contacts 502 and My RecentPlaces 509 illustrate a more specific cache of only the recent contactsand places, respectively, that were searched. It should be appreciatedby those that are skilled in the art, that if you search for a place onthe ASP server 123 system, and it is displayed on the web page 500 inthe My Recent Places 509 list, the same fields are accessible on auser's mobile device. For example, if a user searches for a Dentistoffice on the website it will be stored as a recent item in the user'sMy Recent Places 509 list. When that user is on the move, the user canaccess this location on its wireless telephone by simply searching itsMy Recent Places list. This part of the invention allows a user toeasily and quickly mirror and retrieve the recent searches that the userperformed on the web site 500 for fast retrieval on the mobiletelephone.

As illustrated in FIG. 6, when you first visit the Contacts 519 web page500, the information displayed is a table 611 that lists the contactswhose information was recently viewed on the web page 500. Some standardfields provided include Contact Name 608, Company 609, and Phone Number610. This Recently Viewed 600 contact web page provides a quick glanceat the most recently viewed contacts. Additionally, a user can requestto view a list of their contacts unfiltered (i.e., “All Contacts” 601),or by other filters, such as “Recently Edited” 602, “My Recent Contacts”603, “My Recent Places” 604, “Birthdays this Month” 605, Contacts “NewLast Week” 606, and Contacts “New this Week” 607.

As illustrated in FIG. 7, the “All Contacts” view 700 provides adetailed view of all of a user's contacts. This view's 700 data can besorted by a number of fields, such as Name 705, Company 706, Group 707,Title 708, Phone 709, E-Mail 710, or Owner 713. Contact data can besorted and viewed 701 alphabetically (i.e., A-Z), numerically (i.e.,“123”), or viewed in its entirety (i.e., “All”). Each displayed set ofcontact data is numbered 702 and displayed to the user, and a user mayview the next 711 and previous 712 sets of contact data easily.Additionally, the number of contact data records displayed at a time(i.e., per set) is preferably configurable 716. As people skilled in theart will appreciate, a user can edit 703 any contact or delete a singleor multiple contacts 704. A user can also select contacts to bedownloaded to the Telecommunication Device by checking the check box forthe On Ph (on the phone) 715 field and clicking the Update 714 button.This enables the wireless phone to download the selected Contacts to theTelecommunication Device's local address book. As people in the art willappreciate, the Contact data can be compressed for download, and eachcontact can be identified by a pre-defined ID in order to allow fordifferential updates of contacts that have changed since the lastdownload.

Providing a full view of information about a particular Contact 800 ispreferred in an address book application. FIG. 8 illustrates the mainfields for providing said vCard fields. These fields include Name, JobTitle, company Department, Birthday, Reports To, and Contact Source, asillustrated in one block of information 806. Another block ofinformation 825 illustrates contact information, such as Work Phone,Work Fax, Mobile Phone, Home Phone, E-Mail Address, IM Address, and WebPage. Other information blocks include Contact Owner, vCard Group andType 807, as well as information on the maintenance of the contact(i.e., Created By and Modified By) and its viewing Permissions 824.

Address information is provided in separate blocks of information, suchas Home 823 and Work Address fields 808, which provides the ability tomap the contact in the application. Other contact fields blocks includea block 809 with alternate email addresses (i.e., E-Mail 2, E-Mail 3)and Pager and Car Phone numbers, and a block 822 with the Home Faxnumber, Anniversary, Spouse, and Children information fields. A finalblock 810 is provided for the notes field. The summation of all of theseindividual blocks of information provides complete Contact (i.e., vCard)information for any contact. A user can also edit 801, copy 802, print803, and delete 804 the contact. Finally, an image 826 associated withthe Contact is displayed to the user alongside the other Contact data.This invention also allows a user to obtain driving directions 805 toand from the contact.

In accordance with the preferred embodiment, the Telecommunication CallEvents made to the Telecommunication Devices associated with thesigned-in user that were initiated or received by the viewed Contact arepreferably displayed, as all of the Telecommunication Call Events thatwere captured for said user are stored on the online ASP 123 system. Forexample, in one embodiment as shown in FIG. 8, the call history 811 isprovided for the user 800 that had calls with 812 various otherContacts, which may be the same said user or another user within thesame team as said user. If a Contact name is provided, the Contact Ownerfield 820 is also displayed, since each contact belongs to someone(i.e., another user which is responsible for the maintenance of acontact). The call history 811 displays each call's “From Phone” 815 and“To Phone” 816 phone number identifiers, as well as the start 817 andend 818 time of the call and the call's duration 819. This list onlyprovides a subset of the complete call history for this Contact 800, andthe user can choose the length of this displayed subset by selecting thenumber of records displayed per page 813. To view the Contact's 800complete call history, a user can click on a button 814 in the webpage.Additionally, a user can also send an e-mail to this contact by clickinga different button 821 in the web page.

As illustrated in FIG. 9, preferably all of the contact fields can beedited, except the Created By and Modified By fields. Additionally inone embodiment, each contact can have different permissions 903associated with it, since a contact can be shared by a group of users ifit is a public contact. In one embodiment, each Contact can be placed ina folder or Group 901 and each Contact has an associated Type 902 thatcan be changed as shown below in the following tables.

Type Fields Contacts Places Group Fields Unfiled Business (default)Personal Family Friends Colleagues School VIP Favorites CompetitionSuppliers International Miscellaneous

Furthermore, each Contact can have an image (826 & 904) associated withit, which is uploaded to the server by clicking on the “Upload ContactPhotograph” 905 button. The Path 906 of the image 904 on the localmachine is displayed to the user in the web page. When all changes savebeen made, a user clicks a button to apply changes 900 using a mouse ina web browser, which is known to all people that are skilled in the art.

As illustrated in FIG. 10, it is possible to create a new Contact 1000and enter in all of the available information fields for a Contact,except the Created By and Modified By fields.

Searching for Call History 1100 for a team's members can be implementedusing a date and time range. As illustrated in FIG. 11, a user canselect either a predefined time range 1101, such as Today's date 1103 orcan select from a group of time range identifiers 1102. For each searchand in this preferred embodiment, a user is required to select themember or group of members 1104 and the type of call 1106, such as anincoming, outgoing, or missed call. In order to generate the callhistory view, after selecting the required fields, a user simply clickson the generate button 1105.

Additionally, this call history view 1100 preferably displays anoverview of a team's members 1110 and their phone statistics, such asLast Phone Synchronization time 1111 and Last Login 1112 either on thephone or the web site, and provides links to view the call history 1120for incoming 1121, outgoing 1122, and missed 1123 calls. This view canalso enable the remote synchronization of Telecommunication Call Eventsby checking a box 1109 and clicking the synchronize button 1107. Theteam's call history information can also be printed by clicking on aprint button 1108.

When a Call History 1200 view is generated, it provides informationillustrating the type of call history, such as incoming, outgoing,missed, or all calls 1201. The call history information identifies whothe user had conversations with 1207 and can be generated for aplurality of Telecommunication Devices associated with the user'saccount. General call history information fields include “From Phone”1208, “To Phone” 1209, “Start Time” 1210, “End Time” 1211, “Duration”1212, and the “Contact Owner” 1213 of the contact if any exists. A linknext to each phone number (both From and To) provides a way to Map (1215& 1216) that phone number's location at the time the call was made orreceived or Map (1215 & 1216) the vCard's home or business address thatis associated with said phone number. The number of call history recordsper page (1214 & 1206) can vary and previous 1204 or next 1205 pageinformation can also be displayed. The entire or subset of said callhistory can be printed 1202 or exported 1203 by clicking the appropriatebuttons on the web page.

The preferred embodiment of the present invention also includes a findon map 1300 functionality, which, in one embodiment, allows a user tosearch and map addresses 1301, places 1302, area code and prefix phonenumber information 1303, and latitude and longitude map coordinates1304. Every time an address is searched for and found it is stored forfuture use by the Recent Locations 1305 feature on the web page. Thisallows a drop down menu for users to select from a number of recentpre-defined locations that were mapped on the web page. When entering anaddress, typically the fields required are a street address 1306, city1307, state 1308, zip code 1309, and country 1310. After all or a subsetof said information has been entered, a map can be generated by clickingon a button or link 1311 in this embodiment.

Finding a place or POI 1302 is a similar process, but typically the onlyfield that is required to be entered is the place name 1312 ordescription, such as the phone number, address, or the like as known tothose that are skilled in the art. A map can be generated by clicking ona button or link 1313 in this embodiment. Additionally, a map of an areacode and prefix 1303 can be obtained by entering said information 1314and clicking on a button or link 1315 in this embodiment. In a similarmanner, a user can enter latitude 1316 and longitude 1317 coordinatesand click on a button or link 1318 in this embodiment to map thecoordinates' location. For the case where a user entered a place name1302 and requested a map 1313, if an exact match was not found a list ofpartial matches 1400 & 1401 is provided, as illustrated in FIG. 14. Thispartial list of information will highlight the closest matches 1402 anddisplay a listing of the next immediate partial matches 1403. A userneed only select a suitable match and click on a button or link 1404 toobtain a map in this embodiment.

After a map has been obtained, as shown in FIG. 15, it will be displayedon a different web page 1500 illustrating the essence of the map 1506and a mechanism to zoom 1501 and pan 1506 around the map. The panning1506 is simply performed by clicking on the new center point of the mapas known to people that are skilled in the art, or by selecting someother button in the direction of the desired pan. A user can add thismapped location to their Contacts 1502 or can print 1503 or E-Mail 1504this map. Additionally, this location can be added to an origin ordestination of a route for the purpose of creating driving directions1505 to or from this location. At anytime a user can obtain a new map1507 for another location.

As illustrated in FIG. 16, one embodiment of this invention allows auser to request driving directions 1600 from an entered starting address(i.e., origin) 1601 to an entered destination address 1604. A list ofrecent locations 1603 is available to the user in addition to thestandard fields for mapping a location, such as the street address 1605,city 1606, state 1607 and zip code 1608. A user need only enter therequired fields and may obtain a map by clicking on a button or link1609 in this embodiment. After a successful search for the locations ofthe entered origin and destination addresses or selected locations iscompleted, a route is computed and driving directions are displayed in anew web page 1700. The resulting driving directions are summarized bydisplaying the start 1706 and end 1707 addresses, total trip drivingdistance, and total trip drive time 1710. Also provided is anotheropportunity to add the start 1706 or end 1707 address to the user'sContacts database by pressing a button next to the address (1708 &1709). As another means of summarizing the route, a map of thedestination location 1704 and a map of the entire route 1705 aredisplayed. Detailed driving directions 1711 are displayed in a list withroute maneuver order numbers, maneuver instructions (i.e., “Turn Left onJamboree Rd.”), elapsed distance, and a graphical representation of themaneuver (i.e., left turn arrow). The driving directions view can beprinted with the displayed maps 1702, without maps and just as textdirections 1703, or can be emailed 1701.

FIG. 18 illustrates the setup view 1801 which offers options availableto a user setting up its account, and displays the user's name 1802 thatthe options apply to. The setup view 1801 may offer options for thefollowing settings: Personal Settings 1803, such as editing the user'spersonal information or password; Tools 1804, such as wizards forimporting or deleting numerous Contacts; Phone Settings 1805, such asadding, editing or deleting phones associated with said user's account,or changing the user's mobile access PIN; and Administration Settings1806 for authorized users, such as for managing the members of theuser's team, changing password policies, and viewing login history andmember statistics.

FIG. 19 a illustrates the various fields associated with a user'sPersonal Information 1900, which is part of a user's Personal Settings1803. The user's Personal Information 1900 fields are very similar tothose of a Contact, since in a team this user can serve as a Contact andsaid user's Personal Information 1900 can serve as that Contact'sinformation. Personal Information 1900 fields may include several blocksof information. For example, general account settings (1905 & 1911) maybe described by username, nickname, permission level, user accountstatus (active/disabled), last login date and time, disk space used bythis account, user's time zone, user's preference for receiving thecompany's product newsletter, and the user's typical schedule forconsideration in reports. More specific user identification information1906 can be specified by name, job title, company, department, birthday,the direct supervisor of the user, and the source of this user'sinvolvement with the team, if there is one. The user can then categorizeits own Group and Type, being its own Contact Owner 1907, and the usercan identify its contact information as private if necessary 1913. Auser's contact information includes the usual address and phone numberfields, such as Work 1908 and Home 1914 Street Address, City, State,Zip, and Country, Work and Home Phone and Fax, and Mobile Phone numbers(1912 & 1915). Other forms of contact, such as Email Addresses, IMAddress, Web Page, Pager and Car Phone numbers (1912 & 1909) can also beincluded. For more personal notes, the user can enter information abouttheir Anniversary, Spouse, and Children 1915, or miscellaneousinformation in the Notes field 1910.

Whenever a user's Personal Information 1900 is created or modified 1913,the time of that activity is recorded and also displayed along with theinformation. Once a user's Personal Information 1900 is recorded, theuser can Edit 1901 its own personal information, view or modify itsGroup Permissions 1902, view its Login History 1903, or Change itsPassword 1904. From this detailed view of Personal Information 1900, auser can follow links provided to map the work or home address, to sendan email to a clicked-on email address, to visit a clicked-on web pageaddress (i.e., URL), or to view detailed call history for a clicked-onphone number.

FIG. 19 b illustrates a sample list of Groups and their Permissions1925, where each Group is identified by a pre-defined name 1926 and hasa permission setting 1927. The permission setting 1927 determines if aGroup, by which Contacts are grouped, is considered private or public.If a Group is made public, then all Contacts with that Group assignmentare also made public and can be viewed in full detail by all teammembers. If a Group is made private, then all Contacts with that Groupassignment are also made private and can be viewed in detail only by theContact Owner.

FIG. 19 c illustrates an example of a user's login history 1950, whereeach login event is identified by the time the user signed in 1951, theIP Address the user logged in from 1952, and the result of the loginattempt 1953, whether it succeeded or failed.

FIG. 20 illustrates an example of a user's phone assignments 2000, whichis part of a user's Phone Settings 1805. All of the user's phoneassignments, that is, those phones that are associated with said user'saccount, are listed 2001, and each phone assignment is described by itsphone number and the time the phone was activated on said user'saccount. A phone number can be treated as a unique identifier, because,as previously described, a phone number can only be associated to oneaccount, although an account may have multiple phone numbers associatedwith it. A phone assignment may be removed at anytime by clicking aRemove button next to the phone number to be removed.

A phone assignment may also be easily added, as illustrated in FIG. 21.A user may add a phone 2100, which is part of a user's Phone Settings1805, for its own account, of for another team member's account if theuser has the appropriate permissions. The user whose account the phoneassignment is being added to is identified by displaying that user'susername 2601. In one embodiment, to add a phone assignment the userneeds two pieces of information, the phone number 2102 and the phone'sPIN 2103. The phone's PIN 2103 is obtained during the phoneapplication's registration process, which requires communication withthe server to allow the server to authorize registration, ensuring thephone number in question is not assigned to any other user accounts, andto allow the server to provide the phone application with a valid PIN.The phone's owner or user then uses that PIN on the web page to completethe process of associating that phone to the user's account. Thisensures that the user requesting the phone addition has physical accessto the phone, either directly or indirectly through a communicatingphone user, and is thereby permitted to request the assignment. Tocomplete the addition of a phone assignment, the user enters therequired information and presses the Add Phones button 2104. Once thephone number is cleared for assignment and the PIN is verified, the newphone assignment is complete.

Another part of a user's Phone Settings 1805 is the ability to changethe user's Mobile Access PIN 2200, as illustrated in FIG. 22. The MobileAccess PIN is the password used on the phone's application to access theuser's account features, such as Contacts, My Recent Places, etc. Theusername 2201 for the user whose Mobile Access PIN will be changed isspecified 2202, since users with appropriate permissions can also changeanother user's Mobile Access PIN. This may be useful, for example, whenan employee leaves a company and the supervisor wants to ensure that theex-employee can not access his/her old account anymore. To set a newMobile Access PIN, the user enters the new Mobile Access PIN 2203 andconfirms the entry by typing it in again 2204, and then presses theApply Changes button 2205 to complete the change.

For use by teams, a team administrator should preferably be able toquickly view and modify the teams account settings. FIG. 23 illustratesthe Administration Settings 2300 that a team administrator can use tomanage the team's members. A team administrator can get a quick overviewof the team in a tabular format, such as that illustrated, whichsummarizes each team member's name 2307, username 2308, nickname 2309,account status (active or disabled) 2310, and permission level 2311.Each member's information can be edited, simply by clicking on the Editlink 2305 next to the member's name, or by clicking on the links on themember's name 2307, username 2308, and nickname 2309. Multiple members'password can be reset by the administrator by checking the PasswordReset checkbox 2306 next to each member whose password should be resetand pressing the Update button 2301. This overview of the team's membercan be sorted, by clicking on any of the column headers, such as Name2307, and can also be sorted by a specific letter or numerically 2302.The number of team members to display per web page 2312 may beselectable and the page number currently being viewed 2303 is alsodisplayed. An administrator can move from page to page using PreviousPage and Next Page links 2304. Clicking on a user's account status link2310 will allow the administrator to change that user's account statusfrom Active to Disabled or Disabled to Active. Clicking on a user'sPermission Level link 2311 will allow the user to change that user'spermission level, giving them more or less account privileges that theircurrent settings provide. For example, a user who has Permission LevelAccount Manager can be made into an Administrator in order to increasethat user's access and/or control over more of the team's functions andsettings. Likewise, a user may be given a lower Permission Level inorder to restrict that user's access and/or control more over the team'sand/or user account's functions and settings.

FIG. 24 illustrates an additional safety feature that helpsadministrator ensure their users' account information is accessed onlyby those users. Another part of Administration Settings 2300, PasswordPolicies 2400 allow an administrator to require that all team membersreset their passwords routinely in order to keep passwords secure andless prone to hacking 2401. To do this, an administrator simplyspecifies an expiration period 2405, after which the team's currentpasswords expire. To ward off hacker attempts, the administrator can setthe maximum number of failed login attempts 2402 before a login attemptis no longer allowed. This too is a setting that can be changed simplyby editing the current value displayed 2406. Once the maximum number offailed login attempts 2402 has been reached, the user attempting tologin is “locked out” for a pre-defined period of time 2403. Thislockout effective period 2403 can be adjusted from its current valuesimply by changing the period value 2407. Any changes made to any of thePassword Policies values can be applied by pressing the Apply Changesbutton 2404.

Another part of Administrator Settings 2300 is being able to view MemberStatistics 2500, as illustrated in FIG. 25. The administrator can get anat-a-glance overview of the team's usage of the application and thewebsite and the amount of storage space currently used. This overviewsummarizes the whole team's statistics, such as by displaying the totalnumber of contacts created by the team 2501 or the total amount of diskspace used by the team 2502. The overview also summarizes each member'sstatistics in a tabular format, where the members can be viewedalphabetically, by a particular letter, or numerically 2503. Each teammember in the overview is identified by its name 2505 and username 2506,and the member's displayed statistics include the number of contactscreated 2507, the number of contacts synchronized to the phone 2508, andthe amount of disk space used by that team member's account 2509.Clicking on any of the column headers sorts the overview list accordingto the clicked column data type. Clicking on the links where the datavalues are, such as on the team member's name or username, will link tomore information on that user in reference to the data type clicked.Multiple web pages of members may be necessary, depending on the numberof members the administrator chooses to display per page 2511, and theadministrator can scroll to the next and previous pages using a link2510, while the currently viewed page is numbered and displayed 2504.

As people skilled in the art will appreciate, searching for Places andTrips (i.e., Directions or Routes) on a mobile wireless telephone is adaunting task, primarily due to the limited form factor of the wirelesstelephone (i.e., Telecommunication Device). As illustrated in FIG. 26 awireless telephone 2600 is comprised of a display 2601 and a keypad2614. As people skilled in the art understand, a user can maneuveraround a wireless telephone's GUI 2601 using a rocker 2603 and a selectbutton 2602 which simulates the functionality of a personal computermouse. For this embodiment, as illustrated in FIG. 26, a GUI 2607 isshown displaying a menu of options that illustrates a graphicalinterface for searching for places (2609 & 2611) and trips (2610 & 2612)and for displaying maps 2613 on a wireless telephone. This GUI 2607 isillustrated by magnifying the projection (2604 & 2605) of the wirelessphone's GUI 2607 in order to aid in the illustration of this invention.

In one embodiment, using a web browser it is possible to display a webpage 2715 that illustrates the core functionality of finding a Place. APlace 2700 is typically defined as having a geographical location, suchas an address which can further derive a Place's latitude and longitudecoordinates. A Place 2700 that is derived from a realizable address canbe shown on a Map 2705 of varying resolution and size. A Map typicallyallows a user to zoom in or out 2703 or to pan around the Map 2705. Asillustrated in this invention, a Place 2700 does not have to be saved,as required by prior art systems. As people skilled in the art willappreciate, geographical locations (i.e., Places) that were found usingthe ASP system 123 are cached by the system and displayed to the user inthe Last Activity 2706 portion of the web page 2715. This illustratesnot only saved and cached (i.e., not purposely saved by the user) Places(2707 & 2708 & 2709), but also saved and cached Trips (2710 & 2711 &2712). Saved Places and Trips are accessible using the “My RecentPlaces” 2714 and “My Recent Trips” 2713 links from this web page 2715.The “Last Activity” 2706 preferably embodies all activity (i.e., inreverse chronological order) initiated by the user on the web page 2715and on one or more of their Telecommunication Devices or remotecomputing devices, and which was registered since the user wasauthenticated and recorded by the ASP system 123. For example, a usermay have searched from the Place “My Fishing Hole #2” 2708 on theirwireless telephone and then searched for the address “18872 BardeenAvenue, Irvine, Calif. 92612” via the web page 2715. This search isillustrated in the “Last Activity” 2706 section of this web page. Itshould be appreciated by those skilled in the art that this “LastActivity” 2706 illustrates searches from multiple computing devices thathad, at one time, a direct connection with the ASP system 123. It shouldalso be appreciated by those skilled in the art that any geographicalsearch (e.g., POI, Address, Latitude/Longitude Coordinates, etc.), canbe saved as a Place 2701 or waypoint. Additionally, any geographicalsearch can be used as a route destination point 2702 (i.e., Start, End,Via, or Stop point). FIG. 27 illustrates only a Start and End 2702point, however this invention supports Via and Stop points as known tothose that are skilled in the art. Additionally, a user can initiate ageographical search 2704 from this web page 2715 to find another Place2700.

Additionally, FIG. 28 a illustrates a GUI display (2800 & 2601) of the“Recent Places” 2801 view on the wireless telephone 2600. It should beappreciated by those skilled in the art that this “Recent Places” 2801view illustrates Places that were both saved and viewed or searched onthe wireless telephone 2600 and on the web page 2715. As people skilledin the art will appreciate, this allows a user to plan on the web page2715 and view the results on their wireless telephone without having toinitiate the search on the wireless telephone's 2600 application. Forexample, in this embodiment the user had searched for a map of theaddress “18872 Bardeen Avenue, Irvine, Calif. 92612” using the wirelesstelephone 2600, but also searched previously on the web page 2715 fortheir stored Places (2803 & 2804 & 2806) and searched addresses 2805 andPOI's (2806 & 2807) that were done while signed in to the web page 2715that was accessing the ASP system 123.

Illustrated in FIG. 28 b, after searching for a Place 2851 on thewireless telephone 2600 a user is able to display the Recent Place's2850 detailed information. This information can consist of a business2852 address 2853, telephone 2854, fax number 2855, e-mail address 2856and a link to view a Map 2857 of this Place's location or create a route2858 to the Place's address 2853. It should be appreciated by thoseskilled in the art that a route can be dynamically generated using thewireless telephone's 2600 GPS interface 307 to create a real-time routefrom the mobile position of the wireless telephone 2600.

Similar to the “Recent Places” 2801 view, as illustrated in FIG. 29, isthe “Recent Trips” 2901 view on the wireless telephone's 2600 GUIdisplay (2900 & 2601). It should be appreciated by those skilled in theart that this “Recent Trips” 2901 view illustrates Trips that were bothsaved and viewed on the wireless telephone 2600 and on the web page2715. As people skilled in the art will appreciate, this allows a userto plan on the web page 2715 and view the results on their wirelesstelephone without having to create a Trip on the wireless telephone's2600 application. For example, in this embodiment the user had created aTrip starting from the address “18872 Bardeen Avenue, Irvine, Calif.92612” to the destination address “32314 Golden Lantern, Laguna Niguel,Calif. 92677” on the web page 2715 as illustrated in FIG. 16 & FIG. 17.The wireless telephone 2600 displays and can retrieve both the createdand cached Trips 2904, as well as the created and saved Trips (i.e.,Trips that were named) (2902 & 2903 & 2905 & 2906) from either the ASPsystem 123 or the Trips that were created and/or stored on the wirelesstelephone 2600.

FIG. 30 depicts a Trip 3012 and Driving Directions 3000 which werecalculated and displayed using a web page 3028 as known to those thatare skilled in the art. As those that are skilled in the art willappreciate, FIG. 30 illustrates the method and system for creating aTrip 3012 with a plurality of destination points (3008 & 3010 & 3013)including a start point (3006 & 3001) and an end point (3016 & 3002). ATrip 3012 can be associated with a plurality of database records (3007 &3009 & 3011 & 3014 & 3015) that were created and synchronized ortransferred from the Telecommunication Device and were collected usingthe Telecommunication Device's specific interfaces, such as a camerainterface 304 as illustrated in FIG. 3. For example, in one embodiment,a user plans a Trip 3012 on the web page 3028. The Trip has a traveltime and driving distance 3005 as known to those skilled in the art.Additionally, the Trip has start 3001 and end 3002 points, which in thisinvention can be added to a user's saved Places using the “Add to Place”buttons for both the start 3003 and end 3004 points. After the usercreates a route, they can journey along the route and take pictures orimages using their wireless telephone's integrated camera 304. Thisallows a user to associate their Trip 3012 with the wireless telephone'scamera. Each image (3007 & 3009 & 3011 & 3014 & 3015) that is recordedalong the Trip 3012 has a time stamp and GPS coordinates that areassociated with the image. Images with GPS coordinates are not required,but are the preferred embodiment for this invention.

After the images have been taken, they can be synchronized ortransferred in real-time or in a batch process to the ASP system 123.One the user signs back into the web page 3028, they are able to reviewtheir entire trip and the photographs that they recorded during theirTrip 3012 in the order that they took the pictures. As people that areskilled in the art will appreciate, the web page 3028 displays atimeline 3017 illustrating the chronological procession of the trip andthe start 3018, destination (3020 & 3022 & 3024), and end point 3021 ofthe Trip 3012, in addition to the images that were taken along the Trip(3019 & 3021 & 3023 & 3025 & 3026) that map directly to the locationswhere the images were taken on the mapped route (3007 & 3009 & 3011 &3014 & 3015). It should be appreciated by those skilled in the art thatthe Trip does not need to be created in advance, since a Trip is definedas having a Start and an End location, all of which can be calculatedusing a GPS device, which can determine when a device, such as awireless telephone, has stopped moving for a defined period of time orthe like. This type of GPS application that determines when aTelecommunication Device has stopped moving is currently available inthe art. One embodiment of this type of application that determines whena wireless telephone has stopped moving is known as the “AtlasTrack”application owned and licensed by Networks In Motion, Inc. of Irvine,Calif. When a user signs into the web page 3028, the user is able toreview their images in a Trip or Route format which was automaticallycreated by the ASP system 123, and displayed to the user for theirreview. This allows a user to view their photographs bothchronologically and spatially.

It should be noted that the present invention may be embodied in formsother than the preferred embodiments described above without departingfrom the spirit or essential characteristics thereof. The specificationcontained herein provides sufficient disclosure for one skilled in theart to implement the various embodiments of the present invention,including the preferred embodiment, which should be considered in allaspect as illustrative and not restrictive; all changes or alternativesthat fall within the meaning and range or equivalency of the claim areintended to be embraced within.

1-32. (canceled)
 33. A mobile communication device comprising; a GPSreceiver to receive GPS data of a mobile communication device, said GPSdata indicating a location of said mobile communication device; an imagecapturing device adapted to capture a plurality of images; a processorprogrammed to associate each of said plurality of images with said GPSdata, said GPS data indicating a location of said mobile communicationdevice at which each of said plurality of images is taken; and atransmitter to transmit said plurality of images and said associated GPSdata, to a remote device.
 34. The mobile communication device of claim33, further comprising: a timer device to determine a time stamp foreach of said plurality of images, said time stamp indicating a date andtime of when an image is taken; wherein said time stamp for each of saidplurality of images is transmitted with said plurality of images to saidremote device.
 35. The mobile communication device of claim 33, furthercomprising: a display to display at least two of said plurality ofimages in either a chronological order or a spatial order, in responseto either said time stamp or said GPS data associated with each of saidplurality of images, respectively.
 36. The mobile communication deviceof claim 33, further comprising: a receiver to receive trip data fromsaid remote device, said trip data being generated by said remote devicebased on time stamps and GPS data associated with said plurality ofimages.
 37. The mobile communication device of claim 36, furthercomprising: a display to display said trip data in a map format; whereinsaid plurality of images are displayed at locations based on their GPSdata on a map.
 38. A remote device, comprising: a network interface toreceive from a mobile communication device a plurality of images and GPSdata associated with each of said plurality of images; a user interfaceto receive user input including a start point and an end point of atrip; a processor to generate trip data based on said start point, saidend point, and said GPS data; and a display to display said trip dataand said plurality of images; wherein said plurality of images aredisplayed with reference to said trip data.
 39. The remote device ofclaim 38, wherein: said network interface is adapted to receive fromsaid mobile communication device a time stamp associated with each ofsaid plurality of images; wherein said trip data includes travel timedata generated based on said time stamps.
 40. The remote device of claim38, wherein: said trip data is displayed in a map format.
 41. The remotedevice of claim 40, wherein said map format includes: a route betweensaid start point and said end point and locations on said route withwhich said plurality of images are associated.
 42. The remote device ofclaim 38, further comprising: a transmitter to transmit said trip datato said mobile communication device to be displayed on said display ofsaid mobile communication device.
 43. A mobile communication device,comprising: a receiver to receive incoming communication data, saidincoming communication data including one of voice data, text data, andimage data; a memory to store a call event of said received incomingcommunication data; a processor programmed to automatically associatesaid call event with an existing database record in said memory; adisplay to display a notification associated with said database recordin response to said call event; and a user interface to receive userinput to update said database record.
 44. The mobile communicationdevice of claim 43, wherein: said database record is a vCard includingcontact information of a caller associated with said incomingcommunication data; wherein said notification is for updating saidcontact information on said vCard.
 45. The mobile communication deviceof claim 43, wherein: said database record is an account associated withsaid incoming communication data; wherein said notification is forupdating account information of said account.
 46. The mobilecommunication device of 45, wherein: said account information includesat least one of an account name, MIN, parent account information,website, account number, ticker symbol, type, industry, number ofemployees, annual revenue, SIC code, billing address, voice note, textnote, image, and customizable form.
 47. The mobile communication deviceof claim 43, further comprising: a communication module to communicatesaid call event to a remote device; wherein said call event isassociated with a database record on said remote device; and whereinsaid notification is received from said remote device.
 48. The mobilecommunication device of claim 43, wherein: said notification isdisplayed while said incoming communication data is being received. 49.The mobile communication device of claim 43, wherein: said notificationis displayed after said incoming communication data is received.
 50. Themobile communication device of claim 43, further comprising: a GPSreceiver to receive GPS data of said mobile communication device, saidGPS data indicating a position of said mobile communication device. 51.The mobile communication device of claim 50, wherein: said notificationis displayed when said position of said mobile communication device iswithin a specific geographic area.
 52. The mobile communication deviceof claim 43, wherein: said notification is in response to a frequency ofsaid call event relating to said database record.
 53. A mobilecommunication device, comprising: a transmitter to transmit a searchquery to a remote server; a receiver to receive search locationinformation data from said remote server in response to said searchquery, said search location information data comprising a contactnumber; a display to display said search location information data onsaid mobile communication device; a user interface to receive user inputdirected to said displayed search location information; a communicationmodule to connect with a device identified by said contact number inresponse to said user input; and a memory to store communication eventinformation associated with said contact number.